package net.lab1024.sa.admin.module.business.devicesAlarmList.domain.form;

import io.swagger.v3.oas.annotations.media.Schema;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * 实时告警列表 新建表单
 *
 * @Author 1
 * @Date 2025-07-14 09:31:27
 * @Copyright 1
 */

@Data
public class DevicesAlarmListAddForm {

    @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "id 不能为空")
    private Integer id;

    @Schema(description = "创建时间")
    private LocalDateTime createdAt;

    @Schema(description = "更新时间")
    private LocalDateTime updatedAt;

    @Schema(description = "删除时间")
    private LocalDateTime deletedAt;

    @Schema(description = "告警名称")
    private String alarmName;

    @Schema(description = "设备uuid")
    private String deviceUuid;

    @Schema(description = "企业uuid")
    private String projectUuid;

    @Schema(description = "设备名称")
    private String deviceName;

    @Schema(description = "数据uuid")
    private String dataUuid;

    @Schema(description = "模型数据uuid")
    private String modelDataUuid;

    @Schema(description = "发生时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "发生时间 不能为空")
    private LocalDateTime happenTime;

    @Schema(description = "清楚时间")
    private LocalDateTime clearTime;

    @Schema(description = "持续时间")
    private BigDecimal keepTime;

    @Schema(description = "告警显示信息")
    private String alarmMessage;

    @Schema(description = "报警清除消息")
    private String alarmClearMessage;

    @Schema(description = "告警等级")
    private Integer alarmLevel;

}